﻿
#ifndef APPCONFIG_H
#define APPCONFIG_H

#define CFGAPP AppConfig::instance()

#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonArray>
#include <QMutex>

#include "AppConfig_global.h"
#include "singleton.h"

class APPCONFIG_EXPORT AppConfig
{
    SINGLETON_DECL(AppConfig)

public:
    void init();

    // 登录用户名
    QString userName();
    void setUserName(const QString& name);
    // 密码
    QString userPassword();
    void setUserPassword(const QString& passwd);
    // 是否记住密码
    int isRemainPassword();
    void remainPassword(int state);
    // 习惯
    int isRemainCustom();
    void remainCustom(int state);

    void saveConfig();
private:
    AppConfig();

    QJsonObject     m_sys;  // 只读配置文件信息
    QMutex          m_userMutex;
    QJsonObject     m_user; // 可读写配置文件信息
};


#endif // APPCONFIG_H
